package com.sright.bcard.common.service.share.base.dao;


/**
 * BaseDAO
 *
 */
public interface BaseDAO<T> {


    /* --------- read --------- */

    /**
     * 主键查询
     *
     * @param id
     * @return
     */
    T selectById(Long id);



    /* --------- write --------- */

    /**
     * 新增
     *
     * @param t
     * @return
     */
    Long insert(T t);

    /**
     * 新增(部分字段)
     * @param t
     * @return
     */
    Long insertSelective(T t);

    /**
     * 更新（全部字段）
     *
     * @param t
     * @return
     */
    Boolean updateAll(T t);

    /**
     * 更新（部分字段）
     * @param t
     * @return
     */
    Boolean updateSelective(T t);


}
